Update Your Site Instantly Using SSI by Les Goss There are probably two main ways you currently update your site. The first, and most important, is adding new content. Whether you are updating a calendar, adding a new page, or putting in a photo of a new product, you are enhancing the value of your site for your visitors. The second, and more mind-numbing changes are those that are made to every page of your site. These might include copyright dates, contact information, the date and time, or navigation links. If you have a large site, changing just your company phone number on every page can be a time-intensive, boring job. Modern web development tools such as Macromedia's Dreamweaver offer a template feature that allows your web designer to change one section of a single page (say the contact info) and have the software automatically change all the pages that were made from that template. Those changed pages are still on the designer's computer, however, and must be uploaded to your server one page at a time. Depending on the number and size of the pages, and the speed of your designer's modem, updating a site this way can take awhile. A simpler and faster method uses something called Server Side Includes (SSI). We'll use the example of updating your contact information, which is currently found on every page of your site. Here's How It's Done Your designer originally creates a new page that only contains your contact information. This page is saved as a regular HTML page. Next, the designer decides where on each page of your site to place the contact info. In that spot, instead of typing in your address, phone number and email, he or she places a single line of code that might look something like < !--#include virtual="../includes/contactSSI.html"-->. This code tells the server to take whatever is on the SSI page and place it in this location. Each page is then saved with the .shtml suffix instead of the plain .html ending. For instance, the URL of your home page might be www.yourcompany.com/index.shtml. This tells the server that hosts your web site that this page has a Server Side Include in it which must be dealt with before the page is sent back to the visitor. Every time this page is called, the server will check the SSI page and load its content into the designated area of the web page. We used to be warned about the extra load this placed on the server, slowing delivery of the pages. However, today's processing speeds seem to have eliminated this problem. If you're not getting hundreds of visitors per minute, don't worry about it. How This Saves Time Once the system is in place, updating every page of a large site is a two-step operation. The SSI page is changed (perhaps the phone number) and that one page is uploaded to the server. That's it! Now every page with a dot shtml ending will show the change instantly, without the entire site having to be uploaded to the server. I use this on my site every time I add a new article. At the top of each page is a pointer to my SSI page. On that page it just says, "This week's article is..." with the article name and a link to it. Every time I add a new article to the site I just change the title and link on the SSI page and upload it to the server. Instantly, every page on the site has the new article name and link. There are also SSI routines that your server runs automatically. In fact, there are several things the server will do for you automatically using SSI as long as you use the correct code to tell it what to do. Probably the most common use of SSI is to automatically post the current date and time. Just insert the code < !--#echo var="DATE_LOCAL" --> where you want the date and time to appear and the server will take care of the rest. By tweaking this code a bit you can change the way the date and time are presented. Using a similar bit of code will let you automatically show the last time a page was updated. For a good overview on using SSI, visit Big Bird Nose's SSI Page (http://www.bignosebird.com/ssi.shtml). The Devil is in the Details SSI does not require any special software or hardware on the designer's computer. Once the hosting server is configured to recognize SSIs (and most are), it's just matter of putting in that one extra line of code on each page. There are several different ways that SSIs are implemented, depending on the configuration of your site's hosting server. The code I've quoted in this article works as described on my host's Linux/Apache server. Some servers may require you to use the .ssi suffix on the SSI page itself, or have other quirks. Contact your web host to get their requirements. Conclusion If you have a relatively small site, you probably don't need to use SSIs, but as your site grows, these little snippets of code can save your designer a considerable amount of time, which should save you a corresponding amount of money. ================================================================ Les Goss is president of ZebraMoon Design, Inc., which specializes in building in Search Engine Optimization into all new and redesigned web sites. Sign up for more articles like this at: http://www.zmoon.com/webdesigntips.html Come to ZebraMoon Web Design (http://www.zmoon.com) to learn how we can help your web site perform better. ================================================================